2.0 -- June 7th, 1999. The following items were added, changed, or fixed:
• Moved all of the event-processing code over to the traditional Macintosh application model. The File menu now contains Open, Close, Save, Revert, and Quit items, which all behave as one would expect. The "Save Cache Settings" button has been removed from the main window, and N3C no longer quits after cache settings are saved, which should make things much easier for people who maintain browsers with multiple users.
• Contrary to what prior versions of the User Manual stated, changes made to cache settings while the browser was running were not being permanently saved. The browser would write over those changes when it quit. Since there is no real workaround for this situation, the user is now notified (and given the option to quit the browser) when changes might be overwritten.
• Added a nifty little user pane to the main window and file selection dialog which displays a graphical representation of the file path to the Netscape Preferences file the user is working with (or may want to select). It's sort of a miniature version of the file path display used in Sherlock.
• Changed cache settings are now drawn in red italics in the main window. This should make it much easier for users to tell which cache settings have been changed during a session.
• Installed balloon help for the significant portions of the interface: the File menu, the main N3C window, the custom cache dialog, and the file selection dialog.
• Completely redid the About box. It now contains a cool (?) graphic, in addition to version and free memory information. The About box appears as a one-second splash when N3C is launched. After N3C has loaded, it displays the user's registration information in the lower corners. The registration key is displayed in blue in the lower-left corner, and the registration code (if one has been entered) is displayed in red in the lower-right corner.
• Reworked the registration reminder and expired-copy notice to more clearly present the relevant registration information.
• Revised the User Manual to reflect the operational changes in version 2.0. For those of you who haven't read the manual, you really should. It answers most of the questions you might have about N3C.
• Definitively addressed (I hope) the issue of multiple registration codes for registered users. Backing up and restoring the N3C Preferences file will no longer cause a user's registration to reset. If the N3C Preferences file is deleted, a user can enter the original registration code to re-activate N3C. The only scenario under which a user should need to obtain a new code would be the complete, irretrievable failure of a drive which hadn't been backed-up after version 2.0 was installed. Because of this, requests for new registration codes will be scrutinized more closely than in the past.
• Lengthened the free trial period from one week to two weeks. Seven days is really plenty of time to evaluate N3C, but I increased it to fourteen in conjunction with the new registration mechanism. Once the two weeks are gone, though, users will either have to register, or wait for the release of a new version.
• Raised the price. With the release of version 2.0 (and since June 1st for people who pay us directly by cash or check), the price of N3C has been raised two dollars. Cash registrations are now US $3.00, and Kagi registrations are now US $5.00. Of course, this only applies to new registrations. Existing registered users are entitled to this upgrade (and all future upgrades) at no additional cost. Of course, it goes without saying that I will not refuse tips, bonuses, or other kinds of gratuities.
This was not an easy decision. I really thought I could keep the price down, and make money from volume. Unfortunately, I was half-right: I've had plenty of volume, but precious little to show for it. As near as I can estimate, illicit users of N3C outnumber registered users by at least a factor of five. As some of you noted, my frustration manifested itself in the last part of the prior version's history. I've calmed down considerably since then, and intend to continue work on N3C. But, in order to do so, I simply must generate more income. When I look at this version of N3C, factor in the work I've put into it (500+ hours) and how far it has come (it's painful for me to even think about version 1.0 now), I am convinced that, even at three to five dollars, N3C is one the best software bargains available. I hope you agree.
1.3 -- April 8th, 1999. The following items were added, changed, or fixed:
• Overhauled the interface to present a cleaner, more intuitive, and less technical look. Popup menus were replaced with color icon bevel buttons.
• N3C can now set how often the browser compares the cache to the network. Users could always change this through the Netscape Preferences panel, but moving it out to N3C makes for one-stop modifications of cache settings. This is a feature I've been meaning to add for a few revs now, and the interface overhaul finally gave me the chance to do it.
• Added a fifteen-second delay on the registration reminder to provide another inducement to register N3C. As I've said from time to time on the Day Job web site, it is petty and shameful to use a one-dollar program without paying for it. Yet, thousands of people are doing just that. If registrations don't increase substantially with this version, it will be the last.
• Reworked the code that checks and updates the version information for the N3C Preferences file. There were some errors in the 1.2.1 code that could cause N3C to forget that it had been registered. These were corrected, and the upgrade from 1.2 (or 1.2.1) to 1.3 should be invisible to registered users.
• Simplified the code used to update cache settings in the Netscape Preferences file, making it more robust and easy to maintain. This change should be invisible to all users.
• Implemented the usual assortment of minor optimizations and bug fixes.
1.2.1 -- March 1st, 1999. The following items were added, changed, or fixed:
• Fixed the main dialog popup menus to resolve a problem that could cause intermittent hard crashes. I was letting the popups load their own 'MENU' resources, which, if I've read Apple's completely schizoid documentation on the subject correctly, is now not recommended.
• Fixed compatibility problems with the Appearance 1.0 extension and control panel. I was using control data tag constants in a couple of spots which were only available in the 1.0.1 API of Appearance. This caused machines running the 1.0 API (i.e., machines running straight Mac OS 8) to gag.
• Fixed a genuine case of non compos mentis in the list box N3C displays when more than one Netscape Preferences file is present. This version now confirms that a list click is within the data bounds of the list. Prior versions would crash if the user double-clicked in a blank area of the list box. I take full responsibility for this silly oversight.
• Added a versioning system to N3C's preferences files. Nothing fancy, but it does insure that N3C's preferences file corresponds to the current version of the application.
• Removed the "Register..." menu option from the Apple menu. Registration can now only be done from the registration reminder or expiration alert.
• Added the ability to copy registration keys to the clipboard to the registration reminder and expiration alert. This should make it easier to work with the registration keys.
• De-modalized every dialog and alert except the about box and error alerts.
1.2 -- February 15th, 1999. The following items were added, changed, or fixed:
• This is nearly a complete rewrite of the application. A number of latent bugs which existed in 1.1.1 were exterminated. Some of these bugs were obscure, but quite significant. Therefore, use of versions 1.1.1 and earlier is no longer recommended, and support for versions 1.1.1 and earlier (except for registered users who are unable to upgrade) is terminated.
• Expanded the auto-find search path to include the Preferences folders on all local, unlocked drives, and the folders which contain either the Navigator or Communicator applications. This expands the search path to include virtually all legal locations for Netscape Preferences files. There is one legal location for Netscape Preferences files that NavCom Cache Control will not find, but remedying that would require a general search of every volume. That would be major overkill.
• Redesigned the dialog which is displayed when more than one Netscape Preferences file is found. The new dialog is much prettier, and clearly identifies the location of the files found.
• Removed the option of allowing the user to continue when NavCom Cache Control detected a potentially corrupt Netscape Preferences file. Users are now notified of the problem, and only allowed to quit.
• Absolutely, positively fixed, once and for all, the line-truncation bug which has existed, in one form or another, since version 1.0.
• Moved all of NavCom Cache Control's documentation to HTML. Since NavCom Cache Control is a utility for users of Netscape browsers, it seemed like a safe bet they would have a browser to view the docs. :) This also allows the documentation to placed online.
• Regrettably implemented a seven-day registration lock on the software. There are 17,000+ copies of NavCom Cache Control in circulation, but less than a hundred registered users. That fact speaks for itself.
1.1.1 -- January 21st, 1999. The following items were added, changed, or fixed:
• Modified the routine which inserts cache lines into a file which previously did not contain them. NCCC now does a full-length text compare (using CompareText) for the insertion point instead of an ASCII string compare. There was a fairly rare situation where the ASCII string compare could result in the download directory preference line being truncated. Because of the encryption Netscape uses to mask the actual location of the the disk cache and download directories, these lines could be longer than 255 characters.
• Throttled back the version check for the Appearance Manager. NavCom Cache Control now runs on any system which can support the Appearance Manager, System 8 included.
1.1 -- January 20th, 1999. The following items were added, changed, and fixed:
• Auto-find is b-a-a-a-a-c-k! Instead of kludging around with FSMakeFSSpec calls to figure out which directories existed, I took matters into my own hands with PBGetCatInfo. NCCC now looks for "Netscape ƒ" and "Netscape Users" in the Preferences folder of the startup drive. If it finds either of them, it will do a recursive search for Netscape Preferences files, using the following criteria:
File name: "Netscape Preferences"
Creator: "MOSS"
File type: "pref"
Data fork length > 0
If more then one file meeting those criteria exists, NCCC gives users a dialog box to select the file they want to work with. If no files are found, NCCC will let users know, and give them the option to manually search for the files. If only one file is found, it is loaded and the cache options dialog is presented.
• NCCC now scans the Netscape Preferences data before doing anything with it. The scan checks for 1.) at least one well-formed preference line, and 2.) properly terminated lines. If problems are found in either of these areas, the user is warned and given the choice to continue (at their own risk) or quit.
• Fixed a major brain fart in the routine that parses the preferences data prior to saving the new file. In certain degenerate cases, NCCC would hang while trying to find a location for the cache lines in the new preferences file. My analysis indicates that this occurs in preference files which are not well-formed, or are empty (i.e., were corrupt or orphaned). In any event, NCCC doesn't lock up in these situations anymore. The screening mentioned above should help, too.
• Compartmentalized the code considerably, cutting the number of data-related globals down to three. It should be much easier to debug and maintain in the future.
1.0.2 -- January 15th, 1999. The following items were added, changed, and fixed:
• Removed the auto-find feature (bug?). With Communicator's use of individual user profile folders, the auto-find process became quite complex and error-prone (i.e., this was the likely cause of the silent termination problem). Auto-find may return, but only after I've worked out all its kinks.
• Simplified the routine which checks for the presence of Appearance Manager. I thought this might have been a cause of silent termination. It wasn't, but I cleaned things up anyway.
1.0.1 -- January 14, 1999. The following items were added, changed, and fixed:
• Modified startup routines to allow manual file selection when the Netscape Preferences file can't be found in the standard path.
• Refined the logic in the initialization routines to clarify error conditions. This will, I hope, address the silent termination issue noted above.